<!--<template>-->
<!--  <el-cascader placeholder="知识点"-->
<!--               v-bind="$attrs"-->
<!--               v-on="$listeners"-->
<!--               :props="props"-->
<!--  />-->
<!--</template>-->

<!--<script>-->
<!--export default {-->
<!--  props: {-->
<!--    props: {-->
<!--      type: Object,-->
<!--      default() {-->
<!--        return {value: 'id', label: 'name'}-->
<!--      }-->
<!--    }-->
<!--  },-->
<!--  watch: {-->
<!--    '$attrs.value': {-->
<!--      handler(value) {-->
<!--        this.validate()-->
<!--      }-->
<!--    }-->
<!--  },-->
<!--  methods: {-->
<!--    validate() {-->
<!--      debugger-->
<!--      if (Array.isArray(this.$attrs.value)) {-->
<!--        let flag = true-->
<!--        let _options = this.$attrs.options-->
<!--        let target = null-->
<!--        this.$attrs.value.forEach(e => {-->
<!--          if (flag) {-->
<!--            target = _options.find(option => option[this.props.value] === e)-->
<!--            if (!target) {-->
<!--              this.$emit('input', [])-->
<!--              flag = false-->
<!--            }-->
<!--          }-->
<!--        })-->
<!--      }-->
<!--    }-->
<!--  }-->
<!--}-->
<!--</script>-->

<!--<style scoped>-->

<!--</style>-->


<template>
  <el-cascader placeholder="知识点"
               :props=props
               v-bind="$attrs"
               v-on="$listeners"
               ref="cascader"
  />
</template>

<script>
export default {
  name: "index",
  props: {
    props: {
      type: Object,
      default() {
        return {value: 'id', label: 'name'}
      }
    }
  },
  methods: {
    validate() {
      if (Array.isArray(this.$attrs.value)) {
        let flag = true
        let _options = this.$attrs.options
        let target = null
        this.$attrs.value.forEach(e => {
          if (flag) {
            target = _options.find(option => option[this.props.value] === e)
            if (!target) {
              this.$emit('input', [])
              flag = false
            }
          }
        })
      }
    }
  }
}
</script>

<style scoped>

</style>
